Spring에서 Select쿼리를 위한 getJdbcTemplate 활용 :: 스프링(spring)/아이바티스(IBatis)/하이버네이트(Hibernate)[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

스프링(spring)/아이바티스(IBatis)/하이버네이트(Hibernate)
[1]
등록일:2008-06-11 11:24:11 (0%)
작성자:
제목:Spring에서 Select쿼리를 위한 getJdbcTemplate 활용
Spring DAO에서 Select 쿼리를 할때 RowMapper클래스를 사용하면 inner클래스가 생성되는게 보기 좋지 않아 저는 이렇게 사용하고 있습니다.
이외의 경우는 API를 찾아보시길...
 
VO클래스에 대응하는 리스트 쿼리
--> query(sql, object[], new BeanRowMapper(VO.class)); // BeanRowMapper클래스는 제 블로그에서 다루었습니다.
--> 리턴은 List로 받는다.
 
VO클래스에 대응하는 Object 쿼리
-->queryForObject(sql, object[], new BeanRowMapper(VO.class));
-->리턴은 한개의 VO Object
 
 
한개의 String 쿼리
--> queryForObject(sql, object[], String.class);
--> 리턴은 String으로 받는다.
 
한개의 Int형을 쿼리
--> queryForInt(sql, object[]);
--> return은 Integer형으로 받는다.
 
싱글Row을 쿼리
--> queryForMap(sql, object[]);
--> return은 Map으로 받는다.
--> Map의 키값은 해당 Row의 컬럼 이름이 된다.)
 
다중Row를 쿼리
--> queryForList(sql, object[])
--> return은 List로 받는다.
--> ListOrderedMap과 MapIterator을 이용하여 값을 빼온다.(import해야함)
 
예:)
   List result2 = getJdbcTemplate().queryForList(sql);
   for(int i=0 ; i<result2.size() ; i++) {
       ListOrderedMap orderMap= (ListOrderedMap)result2.get(i);
       MapIterator map = orderMap.mapIterator();
       while( map.hasNext() ) {
           Object key = map.next();
           Object value = map.getValue();
           System.out.println(key+" : "+ value);
       }
   }
 
--> 리턴 받은 List에는 내부적으로 List interface를 구현한 LinkedList가 있으며 이 LinkedList에는 key와 value로 이루어진 ListOrderedMap의 배열이 존재한다.
사용할때는 그냥 리스트에서 Map을 뽑아서 쓰면 되겠다.....
[본문링크] Spring에서 Select쿼리를 위한 getJdbcTemplate 활용
[1]
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=30327
작성자
비밀번호

 

SSISOCommunity

[이전]

Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.